package com.example.onlinemonitoring.model;

import com.example.onlinemonitoring.model.common.sensor;

import javax.persistence.Id;
import java.util.Date;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.example.onlinemonitoring.AOP.Float2Serializer;
public class Byqpdsensor extends sensor {
    /**
     * 变压器局放传感器的编号。主键。自动递增。
     */
    @Id
    private Long id;

    /**
     * 外键。变电站的编号。
     */
    private Integer stationid;

    /**
     * 设备组
     */
    private Integer devicegroup;

    /**
     * 设备地址。传感器的站号。
     */
    private Integer deviceaddr;

    /**
     * 监测点的名称。
     */
    private String pointname;

    /**
     * 是否有信号，0无信号，1有信号。
     */
    private Integer lasthavesignal;

    /**
     * 上次的信号强度，[0,255]。
     */
    private Integer lastsignalpower;

    /**
     * 放电量
     */
    @JsonSerialize(using = Float2Serializer.class)
    private Float lastdischargeamount;

    @JsonSerialize(using = Float2Serializer.class)
    private Float dischargeamountalarm;

    @JsonSerialize(using = Float2Serializer.class)
    private Float dischargeamountwarning;

    /**
     * 修正系数
     */
    @JsonSerialize(using = Float2Serializer.class)
    private Float pdkvalue;

    /**
     * 修正值
     */
    @JsonSerialize(using = Float2Serializer.class)
    private Float pdmvalue;

    /**
     * 放电类型。模拟值。case 0: pdType = "颗粒放电"; 
case 1: pdType = "电极放电";
case 2: pdType = "间隙放电"; 
case 3: pdType = "电晕放电"; 
          
     */
    private String lastdischargetype;

    /**
     * 上次复位后的放电次数。最新一条数据。
     */
    private Long lastrst;

    /**
     * 总放电次数。最新一条数据。
     */
    private Long lasttot;

    /**
     * 通信状态。 0表示正常，1表示异常。不论通信成功或者失败，都必须修改此值。
     */
    private Integer lastcommunicationstatus;

    private Date lastdatatime;

    private Date lasthisdatatime;

    /**
     * 报警等级。最新一条数据。\n0=正常，1=预警(黄色)，2=报警(红色)
     */
    private Integer lastalarmlevel;

    /**
     * 上次报警消息。
     */
    private String lastalarmmessage;

    /**
     * 备注信息。
     */
    private String memo;

    /**
     * 字段的显示和隐藏
     */
    private String style;

    /**
     * 值为0为投用,值为1已投用
     */
    private Integer inuse;

    /**
     * 获取变压器局放传感器的编号。主键。自动递增。
     *
     * @return id - 变压器局放传感器的编号。主键。自动递增。
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置变压器局放传感器的编号。主键。自动递增。
     *
     * @param id 变压器局放传感器的编号。主键。自动递增。
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取外键。变电站的编号。
     *
     * @return stationid - 外键。变电站的编号。
     */
    public Integer getStationid() {
        return stationid;
    }

    /**
     * 设置外键。变电站的编号。
     *
     * @param stationid 外键。变电站的编号。
     */
    public void setStationid(Integer stationid) {
        this.stationid = stationid;
    }

    /**
     * 获取设备组
     *
     * @return devicegroup - 设备组
     */
    public Integer getDevicegroup() {
        return devicegroup;
    }

    /**
     * 设置设备组
     *
     * @param devicegroup 设备组
     */
    public void setDevicegroup(Integer devicegroup) {
        this.devicegroup = devicegroup;
    }

    /**
     * 获取设备地址。传感器的站号。
     *
     * @return deviceaddr - 设备地址。传感器的站号。
     */
    public Integer getDeviceaddr() {
        return deviceaddr;
    }

    /**
     * 设置设备地址。传感器的站号。
     *
     * @param deviceaddr 设备地址。传感器的站号。
     */
    public void setDeviceaddr(Integer deviceaddr) {
        this.deviceaddr = deviceaddr;
    }

    /**
     * 获取监测点的名称。
     *
     * @return pointname - 监测点的名称。
     */
    public String getPointname() {
        return pointname;
    }

    /**
     * 设置监测点的名称。
     *
     * @param pointname 监测点的名称。
     */
    public void setPointname(String pointname) {
        this.pointname = pointname;
    }

    /**
     * 获取是否有信号，0无信号，1有信号。
     *
     * @return lasthavesignal - 是否有信号，0无信号，1有信号。
     */
    public Integer getLasthavesignal() {
        return lasthavesignal;
    }

    /**
     * 设置是否有信号，0无信号，1有信号。
     *
     * @param lasthavesignal 是否有信号，0无信号，1有信号。
     */
    public void setLasthavesignal(Integer lasthavesignal) {
        this.lasthavesignal = lasthavesignal;
    }

    /**
     * 获取上次的信号强度，[0,255]。
     *
     * @return lastsignalpower - 上次的信号强度，[0,255]。
     */
    public Integer getLastsignalpower() {
        return lastsignalpower;
    }

    /**
     * 设置上次的信号强度，[0,255]。
     *
     * @param lastsignalpower 上次的信号强度，[0,255]。
     */
    public void setLastsignalpower(Integer lastsignalpower) {
        this.lastsignalpower = lastsignalpower;
    }

    /**
     * 获取放电量
     *
     * @return lastdischargeamount - 放电量
     */
    public Float getLastdischargeamount() {
        return lastdischargeamount;
    }

    /**
     * 设置放电量
     *
     * @param lastdischargeamount 放电量
     */
    public void setLastdischargeamount(Float lastdischargeamount) {
        this.lastdischargeamount = lastdischargeamount;
    }

    /**
     * @return dischargeamountalarm
     */
    public Float getDischargeamountalarm() {
        return dischargeamountalarm;
    }

    /**
     * @param dischargeamountalarm
     */
    public void setDischargeamountalarm(Float dischargeamountalarm) {
        this.dischargeamountalarm = dischargeamountalarm;
    }

    /**
     * @return dischargeamountwarning
     */
    public Float getDischargeamountwarning() {
        return dischargeamountwarning;
    }

    /**
     * @param dischargeamountwarning
     */
    public void setDischargeamountwarning(Float dischargeamountwarning) {
        this.dischargeamountwarning = dischargeamountwarning;
    }

    /**
     * 获取修正系数
     *
     * @return pdkvalue - 修正系数
     */
    public Float getPdkvalue() {
        return pdkvalue;
    }

    /**
     * 设置修正系数
     *
     * @param pdkvalue 修正系数
     */
    public void setPdkvalue(Float pdkvalue) {
        this.pdkvalue = pdkvalue;
    }

    /**
     * 获取修正值
     *
     * @return pdmvalue - 修正值
     */
    public Float getPdmvalue() {
        return pdmvalue;
    }

    /**
     * 设置修正值
     *
     * @param pdmvalue 修正值
     */
    public void setPdmvalue(Float pdmvalue) {
        this.pdmvalue = pdmvalue;
    }

    /**
     * 获取放电类型。模拟值。case 0: pdType = "颗粒放电"; 
case 1: pdType = "电极放电";
case 2: pdType = "间隙放电"; 
case 3: pdType = "电晕放电"; 
          
     *
     * @return lastdischargetype - 放电类型。模拟值。case 0: pdType = "颗粒放电"; 
case 1: pdType = "电极放电";
case 2: pdType = "间隙放电"; 
case 3: pdType = "电晕放电"; 
          
     */
    public String getLastdischargetype() {
        return lastdischargetype;
    }

    /**
     * 设置放电类型。模拟值。case 0: pdType = "颗粒放电"; 
case 1: pdType = "电极放电";
case 2: pdType = "间隙放电"; 
case 3: pdType = "电晕放电"; 
          
     *
     * @param lastdischargetype 放电类型。模拟值。case 0: pdType = "颗粒放电"; 
case 1: pdType = "电极放电";
case 2: pdType = "间隙放电"; 
case 3: pdType = "电晕放电"; 
          
     */
    public void setLastdischargetype(String lastdischargetype) {
        this.lastdischargetype = lastdischargetype;
    }

    /**
     * 获取上次复位后的放电次数。最新一条数据。
     *
     * @return lastrst - 上次复位后的放电次数。最新一条数据。
     */
    public Long getLastrst() {
        return lastrst;
    }

    /**
     * 设置上次复位后的放电次数。最新一条数据。
     *
     * @param lastrst 上次复位后的放电次数。最新一条数据。
     */
    public void setLastrst(Long lastrst) {
        this.lastrst = lastrst;
    }

    /**
     * 获取总放电次数。最新一条数据。
     *
     * @return lasttot - 总放电次数。最新一条数据。
     */
    public Long getLasttot() {
        return lasttot;
    }

    /**
     * 设置总放电次数。最新一条数据。
     *
     * @param lasttot 总放电次数。最新一条数据。
     */
    public void setLasttot(Long lasttot) {
        this.lasttot = lasttot;
    }

    /**
     * 获取通信状态。 0表示正常，1表示异常。不论通信成功或者失败，都必须修改此值。
     *
     * @return lastcommunicationstatus - 通信状态。 0表示正常，1表示异常。不论通信成功或者失败，都必须修改此值。
     */
    public Integer getLastcommunicationstatus() {
        return lastcommunicationstatus;
    }

    /**
     * 设置通信状态。 0表示正常，1表示异常。不论通信成功或者失败，都必须修改此值。
     *
     * @param lastcommunicationstatus 通信状态。 0表示正常，1表示异常。不论通信成功或者失败，都必须修改此值。
     */
    public void setLastcommunicationstatus(Integer lastcommunicationstatus) {
        this.lastcommunicationstatus = lastcommunicationstatus;
    }

    /**
     * @return lastdatatime
     */
    public Date getLastdatatime() {
        return lastdatatime;
    }

    /**
     * @param lastdatatime
     */
    public void setLastdatatime(Date lastdatatime) {
        this.lastdatatime = lastdatatime;
    }

    /**
     * @return lasthisdatatime
     */
    public Date getLasthisdatatime() {
        return lasthisdatatime;
    }

    /**
     * @param lasthisdatatime
     */
    public void setLasthisdatatime(Date lasthisdatatime) {
        this.lasthisdatatime = lasthisdatatime;
    }

    /**
     * 获取报警等级。最新一条数据。\n0=正常，1=预警(黄色)，2=报警(红色)
     *
     * @return lastalarmlevel - 报警等级。最新一条数据。\n0=正常，1=预警(黄色)，2=报警(红色)
     */
    public Integer getLastalarmlevel() {
        return lastalarmlevel;
    }

    /**
     * 设置报警等级。最新一条数据。\n0=正常，1=预警(黄色)，2=报警(红色)
     *
     * @param lastalarmlevel 报警等级。最新一条数据。\n0=正常，1=预警(黄色)，2=报警(红色)
     */
    public void setLastalarmlevel(Integer lastalarmlevel) {
        this.lastalarmlevel = lastalarmlevel;
    }

    /**
     * 获取上次报警消息。
     *
     * @return lastalarmmessage - 上次报警消息。
     */
    public String getLastalarmmessage() {
        return lastalarmmessage;
    }

    /**
     * 设置上次报警消息。
     *
     * @param lastalarmmessage 上次报警消息。
     */
    public void setLastalarmmessage(String lastalarmmessage) {
        this.lastalarmmessage = lastalarmmessage;
    }

    /**
     * 获取备注信息。
     *
     * @return memo - 备注信息。
     */
    public String getMemo() {
        return memo;
    }

    /**
     * 设置备注信息。
     *
     * @param memo 备注信息。
     */
    public void setMemo(String memo) {
        this.memo = memo;
    }

    /**
     * 获取字段的显示和隐藏
     *
     * @return style - 字段的显示和隐藏
     */
    public String getStyle() {
        return style;
    }

    /**
     * 设置字段的显示和隐藏
     *
     * @param style 字段的显示和隐藏
     */
    public void setStyle(String style) {
        this.style = style;
    }

    /**
     * 获取值为0为投用,值为1已投用
     *
     * @return inuse - 值为0为投用,值为1已投用
     */
    public Integer getInuse() {
        return inuse;
    }

    /**
     * 设置值为0为投用,值为1已投用
     *
     * @param inuse 值为0为投用,值为1已投用
     */
    public void setInuse(Integer inuse) {
        this.inuse = inuse;
    }
}